const mixin = {
	data() {
		return {
			upload: {
				// 上传接口参数
				option: {
					// 上传服务器地址，需要替换为你的接口地址
					// #ifdef H5
					url:(process.env.NODE_ENV == 'development' ? '/apis' : uni.getStorageSync('baseUrl')) +'/wechat/applet/upload',
					// #endif
					// #ifndef H5
					url: uni.getStorageSync('baseUrl') +'/wechat/applet/upload', // 该地址非真实路径，需替换为你项目自己的接口地址
					// #endif
					// 上传附件的key
					name: 'file',
					// 根据你接口需求自定义请求头,默认不要写content-type,让浏览器自适配
					header: {
						'YX-Tenant-Token': uni.getStorageSync('userToken'),
						'us': 'app',
					},
					// 根据你接口需求自定义body参数
					formData: {
						'YX-Tenant-Token': uni.getStorageSync('userToken'),
						'us': 'app',
					}
				},
				/**
				 * 文件是否转为base64
				 * false: file为文件流，app端跨浏览器不能将文件流返回到当前页面，但不影响上传file，app端如果是图片文件可通过绑定item.path到image标签src回显或者上传成功后服务端返回的服务器文件地址；
				 * 【app和h5】true: file转base64，注意：转base64后若使用组件内置上传，file的值为base64串；
				 * 【微信小程序】true: file转base64返回页面，内置上传用的临时路径item.path
				 * 
				 * 提示：app端因为是跨浏览器的，所以不排除大文件转base64返回时url超长问题，目前只测了一般文件，若遇到那你只能自行改成sqlite或者localStroe
				 * 温馨提示：：：：若无特殊需求不建议转base64，就不解释为什么了。
				 * 温馨提示：：：：若无特殊需求不建议转base64，就不解释为什么了。
				 * 温馨提示：：：：若无特殊需求不建议转base64，就不解释为什么了。
				 */
				toBase: false,
				// 选择文件后是否立即自动上传，true=选择后立即上传
				instantly: true,
				// 选择文件是否去重
				distinct: false,
				// 必传宽高且宽高应与slot宽高保持一致
				width: '180rpx',
				height: '180rpx',
				// 限制允许上传的格式，空串=不限制，默认为空
				formats: '',
				// 文件上传大小限制M
				size: 100,
				// 文件数量限制
				count: 9,
				// 是否多选
				multiple: true,
				// 文件回显列表
				files: new Map(),
				// 微信小程序Map对象for循环不显示，所以转成普通数组，不要问为什么，我也不知道
				wxFiles: [],
				// 是否打印日志
				debug: true,
			}
		}
	},
	mounted() {},
	onLoad(e) {

	},
	methods: {
		//上传进度
		onProgress(e){
			console.log('上传进度',e);
			uni.showLoading({
				title: '上传进度'+e.progress+'%',
				mask: false
			});
		},
		onFileChange(e){
			console.log('文件改变',e);
			uni.showLoading({
				title: '正在上传',
				mask: false
			});
		}
	}
}

export default mixin